#include<stdio.h>
#include<stdlib.h>
 typedef struct 
   {
     int l;
     int r;
   }a;
   int compare(const void*e1,const void* e2)
   {
    return ((a*)e1)->l-((a*)e2)->l;
   }
int main()
{
  int count =1;
   int n;
   scanf("%d",&n);
    a* ps=(a*)malloc(n*sizeof(a));
    
   for(int i=0;i<n;i++)
   {
    scanf("%d%d",&ps[i].l,&ps[i].r);
   }
    qsort(ps,n,sizeof(a),compare);
    
    int cur=ps[0].r;
    for(int i=1;i<n;i++)
    {
        if(cur<ps[i].l)
        {
            count++;
            cur=ps[i].r;
        }else
        {
            if(cur<ps[i].r)
            {
                cur=ps[i].r;
            }
        }
    }
    free(ps);
    ps=NULL;
    printf("%d",count);
    return 0;
}